Methods and systems for selecting an image in a network environment

ABSTRACT

Systems and methods for collecting, selecting, and displaying an image or image set in a network based environment are described. The systems and methods can collect multiple images for any given item from multiple sources, select a desired image (or set of images) that best depicts that item, and then display that selected image (or image set) in the network based environment. The desired image (or image set) that best depicts the item can be selected using any number or combination of pre-selected criteria. By using the pre-selected criteria, the process needs no manual intervention, and can therefore be automated or semi-automated to save both time and cost.

INCORPORATION BY REFERENCE TO ANY PRIORITY APPLICATIONS

Any and all applications for which a foreign or domestic priority claimis identified in the Application Data Sheet as filed with the presentapplication are incorporated by reference under 37 CFR 1.57 and made apart of this specification.

FIELD

This application relates generally to systems and methods forcollecting, selecting, and displaying images in a network basedenvironment. In particular, this application relates to systems andmethods for selecting a specific image(s) among a collection. of imagesusing preselected criteria and then displaying the selected image in anetwork based environment.

BACKGROUND

Digital imaging has become increasingly popular, especially inelectronic commerce which is increasingly being used by sellers toconduct business and sell items to customers. Customers are able toefficiently view and purchase a wide variety of items, including bothgoods and services, over computer networks, including the Internet. Thesame goods and services can be offered by multiple sellers, each withits own description of the item for sale (i.e., including an image),allowing a customer to quickly and easily select any desired item fromany given seller by using each seller's image.

The amount of image files being used for such purposes is increasingdramatically. But with the increasing number of image files comes anincreasing number of duplicate images, as well as minor variationsbetween different image files meant to identify the same item. Indeed,the minor variations between image files can create apparent duplicationof subject matter that is difficult to distinguish when a customer islooking for something specific. In certain instances, the differentimages (or image sets) for the same item can even be provided by thesame source, increasing confusion by the consumer. To avoid thatconfusion, one option has been to present all images meeting thecriteria used to identify the item. This option is distracting and timeconsuming because the customer must look at every single image in thepurchasing process.

Thus, from a customer's perspective, it would be helpful if only asingle image (or image set) is displayed since this would simplify theviewing and purchasing process for the customer. In most instances, thatsingle image (or image set) that is displayed to the customer shouldaccurately depict the item. But often the different images (or imagesets) are provided by different sellers, and processed by multiplesellers each with their own conditions and criteria, before beingdisplayed to the customer. The different images, not to mention thedifferent conditions and criteria, can further confuse the customer andcomplicate the purchasing process.

So there exists a problem of how to select a single image that bestdepicts the item for sale. Most methods address this problem by manuallyselecting the best image. But it is not unusual in these methods to beconfronted with thousands of images. And requiring someone to manuallyfilter through thousands of images is onerous, not to mention timeconsuming and expensive.

Some methods address this problem by selecting the images based onnon-image based. characteristics, such as the date or title accompanyingthe images. But selecting the images to display to the customer usingsuch methods often does not result in selecting the single image (orimage set) that best depicts the item.

SUMMARY

Systems and methods for collecting, selecting, and displaying an imageor image set in a network based environment are disclosed. The systemsand methods can collect multiple images for any given item from multiplesources, select a desired image (or set of images) that best depictsthat item, and then cause the selected image (or image set) to bedisplayed in the network based environment. The desired image (or imageset) that best depicts the item can be selected using any number orcombination of pre-selected criteria. By using the pre-selectedcriteria, the process needs no manual intervention, and can therefore beautomated or semi-automated to save both time and cost.

BRIEF DESCRIPTION OF THE DRAWINGS

The following description can be better understood in light of theFigures, in which:

FIG. 1 contains a diagram illustrating a sample system for collecting,selecting, and displaying an image;

FIG. 2 contains a representation of a sample operator interface forcollecting, selecting, and displaying an image;

FIG. 3 contains a flow diagram illustrating a sample method for scoringan image;

FIG. 4 contains a flow diagram illustrating a sample method forselecting an image for display;

FIG. 5 contains a representation of a sample customer interface forviewing an image;

FIG. 6 contains a representation of a sample user interface thatcontains a feedback option;

FIG. 7 contains a flow diagram illustrating a sample method used toselect an image for a specific item; and

FIG. 8 contains a representation of a sample operation interface forcollecting and selecting a desired image for display in a networkenvironment; and

FIG. 9 contains a representation of a customer interface for viewing adesired image that has been displayed in a network environment.

Together with the following description, the Figures demonstrate andexplain the principles of the systems and methods for collecting,selecting, and displaying an image or image set in a network basedenvironment. In the Figures, the size and configuration of componentsmay be exaggerated for clarity. The same reference numerals in differentFigures represent the same component.

DETAILED DESCRIPTION

The following description supplies specific details in order to providea thorough understanding. Nevertheless, the skilled artisan wouldunderstand that the systems and associated methods of using the systemscan be implemented and used without employing these specific details.Indeed, the systems and associated methods can be placed into practiceby modifying the illustrated systems and methods and can be used inconjunction with any apparatus and techniques conventionally used in theindustry. For example, while the description below focuses on systemsand methods for selecting an image to display in a network-basedenvironment for electronic commerce, it can be implemented in many otherend uses, such as brick and mortar retailers that have a computerizedmeans for shopping, whether via a network or within the storesthemselves, as well as in non-electronic commerce applications.

FIG. 1 contains a pictorial diagram of a sample system 100 forcollecting, selecting, and displaying an image or image set in a networkenvironment. In FIG. 1, the system 100 contains an imaging server 116that facilitates a customer viewing images on any number or combinationof customer devices 102(a) . . . 102(n). The images are collected fromany number or combination of sources 114(a) . . . 114(n), stored in adata store 124, and analyzed in an image information server 112. Thesystem 100 also contains a back-end interface 118 for an operator oradministrator to administer the system as known in the art.

Prior to discussing the details of system 100, it should be understoodthat the following description is presented largely in terms of stepsand operations that may be performed by conventional computercomponents. These computer components, which may be grouped in a singlelocation or distributed over a wide area, generally include computerprocessors, memory storage devices, display devices, input devices, etc.In circumstances where the computer components are distributed, thecomputer components are accessible to each other via any knowncommunication links, such as those illustrated in FIG. 1. The system 100could equally operate within a computer system having a fewer or greaternumber of components than those illustrated in FIG. 1. Thus, thedepiction of system 100 should be taken as illustrative and notlimiting. For example, the system 100 could implement various servicescomponents and peer-to-peer network configurations to implement at leasta portion of the processes.

The system 100 contains a computer network 110 for connecting all thecomponents. Computer networks are well known in the field ofcommunications. Computer networks may include communication links thatextend over a local area or a wide area, or even be global, as in thecase of computer networks forming the Internet. In some embodiments,computer network 110 comprises the Internet. Protocols and componentsfor communicating via such networks and the Internet are well known tothose skilled in the art of computer communications and, thus, need notbe described in more detail herein. Those skilled in the art willrecognize that other interactive environments that include local or widearea networks that connect users and data stores can be used in thesystem 100.

The customer devices that can be used in the system 100 can be anycomputing device that are capable of communicating over computer network110. Examples of such computing devices include set-top boxes, personaldigital assistants, wireless telephones, media players, web pads,electronic book readers, tablets, laptop computers, desktop computers,or combinations thereof. In FIG. 1, the illustrated customer devices aredepicted as a personal computer 102(a), a personal digital assistant(PDA) 102(b), and a wireless telephone 102(n).

The imaging server 116 is generally responsible for providing front-endcommunication with the customer devices. This communication may includegenerating text and/or graphics, possibly organized as an interfaceusing hypertext transfer or other protocols in response to informationinquiries received from the various customer devices. The imaging server116 may also obtain information about any image(s) from the imaginginformation server 112 and display that information to the customerdevices. For example, the imaging server 116 may obtain informationabout an image which best depicts an item that a customer is looking topurchase and then display that image on the PDA 102(b).

The image information server 112 that contains data about the variousimages available. The data contained in server 112 includes all of theseimages, as well as the various sources (collectively, 114(a) . . .114(n)) that have provided those images. The data contained in server112 can also store any desired information that is related to the imagesthemselves, such as any metadata that is associated with an image. Theimage information server 112 can be updated in real time and may reporta real time inventory of the various images, image sources, and relatedinformation.

As shown in FIG. 1, the image information server 112 can obtain imagesfrom any number of sources 114. Those sources can include any entitythat provides any image about any item. Typically, those sources includesellers that are offering various items for sale that can be purchasedby the customer. These sources can also include sellers of the imagesthemselves, rather than an item depicted by the images. One example ofsuch sellers would include photographers.

The image information server 112 in system 100 is generally responsiblefor maintaining any number or combination of rules (or criteria) forcomparing images and for selecting a single image or image set todisplay. These rules (or criteria) may be maintained in any conventionaldata store in one or more memory storage devices within the imageinformation server 112. These rules (or criteria) are used to select abest image (or images) for display, with a best image (or images) beingthat image(s) which is optimized for its intended use. The imageinformation server 112 can be updated in real time and may report realtime information about the number or combination of such rules.

The data store 124 stores the images and any desired data about theimages. The images would include any multimedia file or digital file inany format, including two dimensional standard images, three dimensionalimages, sounds, and videos (as well along with the accompanying codecs).The images may be stored in compressed and/or uncompressed states. Videoimages may be clipped or divided into smaller components as needed ordesired in consideration of network resources.

The systems described above can be used to carry out many methods forcollecting, selecting, and displaying an image or image set in a networkbased environment. For example, the systems described above can collectmultiple images for any given item from multiple sources, select asingle image (or set of images) that best depicts that item, and thendisplay that best image (or image set). An image set may comprise only asingle image or a plurality of images. The image can be displayed in anytype of user interface (UI), including a VI presented to an operator ofthe system or to a customer looking to purchase an item.

FIG. 2 illustrates one example of a VI that may be presented by thesystem to an operator. The UI in FIG. 2 depicts images of a fashionablewoman's boot, but any item could be displayed by the UI. The VI 130comprises a primary view area 132 for viewing the image or imagesreturned by the imaging server. The VI 130 also contains a text portion134, which is an area for a textual description or textual input. InFIG. 2, the subject of the image in the primary viewing area 132 istextually described in the text portion 134. In some instances, the VI130 may contain alternate viewing areas 136, which are areas containingimages different from the image in the primary view area. The skilledartisan would understand that the shapes and sizes of the variouscomponents in UI 130 could be changed as needed.

To be displayed in a UI (such as that depicted in FIG. 2), the image(s)must be scored and then the desired image(s) for display must beselected. One example of a method for scoring the image(s) includes theexemplary method 150 illustrated in FIG. 3. Although the method 150 inFIG. 3 will be discussed in successive steps, it may be done inalternate orders and should not be understood as having to be performedin the described order below. A method of fewer or more steps than thosedepicted may also be used.

As depicted in FIG. 3, the method 150 begins in block 155 when the imagescoring is initiated by the image information server 112. The method 150continues in block 160 when an image request for an item is received.The request can be received by either the operator who is analyzing aparticular item or a customer who is looking to purchase a particularitem. After the request is received, the image metrics for each item arecollected in block 165. The items can be collected from any source thatcan provide any type of image for the item. In most instances, thosesources are sellers of the item that is under consideration. But theycan include any source that can provide the item in any form, includingsellers of the images themselves rather than sellers of itemsrepresented by the images. The images that are collected can be any viewof the item under consideration. In some instances, the image might be asingle view of an item or multiple views of the same item. In otherinstances, the image can be a series (or set) of views of an item. Inyet other instances, the image can be a view of multiples items, such asseveral components that can be sold separately or that can be packagedtogether and sold as a single item. In still other instances, the imagescan be views of specific parts or aspects of the item.

The images that are collected can be isolated or can have otherinformation associated with them. When isolated, only the image itselfis collected. In most instances, though, the images will have otherinformation associated with it. For example, an image might have text(such as a title) associated with it. As another example, the image mayhave other non-image information (other than text) associated with it.As yet another example, the image may have metadata associated with it.Any known metadata can be associated with the image, including Jmerchant information (i.e., a merchant rating), digital rightsmanagement restrictions, and/or customer information (i.e., a customerrating).

The images that are collected can depict just the item itself. As well,the image can depict the item in some type of context. For example, theimage could display the item (clothing) and how it is typically used(being worn on a person or on a mannequin). As another example, theimage can depict the item (a piece of art) as it would normally bedisplayed (in an art gallery). As well, the item could be displayed inany type of desired background or environment.

The collection of images need not be a complete collection of everyavailable image from. every available source. In some embodiments, thecollection could be merely a category or subset of images. The subset ofimages could be, for example, from a selected seller or a favorite imagesource.

After the image metrics have been collected in block 165, each image isscored in block 170 using the metrics. The scoring of the metrics is theprocess, either automatic or manual, of selecting and ranking theimages. In some instances, the scoring process determines which image isbest given the available metrics. In the some embodiments, apredetermined metric (such as a score for the image assigned by thesource from which the image is obtained) may be selected and thenmatched to the image. In other embodiments, though, algorithms can beused to provide the metrics for scoring the images. The images can bejudged against any number or combination of metrics that are designed tofind the best image or image set for a particular item.

In some instances, the metrics themselves are scored before they areused to score the images. The scoring of the metrics is the process,either automatic or manual, of selecting and ranking the metrics usingany number or combination of criteria. In the most embodiments, apredetermined criterion may be selected and then matched to a metric. Inother embodiments, algorithms provide the basis for selecting themetrics. In some instances, the criteria are preselected so that littleto no manual intervention is needed in the selection process. In otherinstances, though, the criteria are selected manually or on asemi-automated basis. For example, the metrics can be evaluated for anyreason, including determining whether they are working and selecting thedesired image or best image.

The number and types of metrics used to select the desired image willdepend on many parameters, including the type of item and the specificimage desired. The number and types of metrics used, while theoreticallyunlimited, are most often constrained by the time and effort whethermanual or automatically-needed to perform the selection process.

The scoring block 170 could include a procedure for classifying orcategorizing the images. In some embodiments, this categorizationprocedure would simplify the scoring performed in block 170 process byrequiring that only a certain category of images needed to be analyzedfor selection. For example, where the desired image is actually a set ofimages showing all possible views of an item, categorizing all images asan image set, or not an image set, would allow the selection process toonly be performed on those images that are part of an image sets.

The scoring performed in block 170 can be based on any desired number orcombination of metrics. The actual metrics can be either objective orsubjective, whether they are subjective to the customer or subjective tothe operator. One example of the metrics that can be used include thoserelated to the quality of the image, such as the number of pixels, thesize of the image file, the size of the actual image (small, medium,large, etc. . . . ), the granularity, and the like. Other examples ofthe metrics include the characteristics of the actual image, such as theshape of the image (square, circular, oval, polygonal, etc. . . . ), thehue, the color or colors of the image, and the like. Yet other examplesof the metrics include the information associated with the image, suchas the metadata, merchant scoring, digital rights management (DRM)restrictions, the originating source, and the like.

These metrics can be combined and considered in any desired manner inblock 170. As well, the metrics can be ranked in any desired manner sothat some metrics are given more importance than others. As well, therecan be any trade-off (or scaling system) of the metrics that can beused. For example, the scoring can have a trade-off between thecoherence and the completeness in selecting the desired image (asdescribed in detail below).

In some embodiments, the metrics are pre-selected so that no manualintervention is needed. In these embodiments, the metrics can also beautomatically ranked so that the scoring is automated and the rankingsystem automatically ranks the images based on the ranked metrics. Thisautomatic ranking can be very advantageous because the scoring in block170 can be automated or semi-automated, thereby allowing it to becarried out on a real time (or substantial real time) basis.

Once the scoring in block 170 has been performed, an image set isassembled in block 175. That image set is assembled once the desiredimage has been determined to qualify under the scoring that has beenperformed in block 170 using the desired metric(s).

The assembled image sets can then optionally be checked for coherency asshown in block 180. The coherence measures the ability of the image orimage set to accurately portray the item. The coherence can be measuredas a range or a grade of accuracy. The coherency may take any formdepending only on the criteria used to determine whether the portrayalis accurate. For example, if the item represented by the image is ablack shirt, the criteria selected may be the color of the image. Inthis example, coherence of the image set can be measured by determiningwhether the color of the shirt is depicted as grey or black. If thecolor is displayed as grey (when the item is black), the image set hasfailed the coherence check.

The assembled image set can also be optionally checked for completenessin block 185. A complete image set may be dependent on the subjectmatter of the images or the images themselves. In some instances, thecompleteness may be judged as whether a set of images includes allpertinent views of the item for sale. In other instances, thecompleteness of the image can be judged on the degree to which the imageshows the desired part(s) or attribute(s) of item, or even the degree towhich the entirety of the item is depicted by the image.

Once the qualifying image sets are determined by the image informationserver, those sets are then stored in a data store, such as data store124 of system 100, in block 190. The image information server 112 canthen retrieve the qualifying image sets from the data store 124 wheneverrequested, i.e., when requested by the image server 116.

After the image(s) have been scored using the above methods, they canthen be selected for display. One exemplary method for image selection(including optimization for the best image that depicts an item) isdepicted as method 300 in FIG. 4. Although the exemplary method 300 inFIG. 4 will be discussed in successive steps, it may be done inalternate orders and should not be understood as having to be performedin the described order. A method of fewer or more steps than thosedepicted may also be used.

The image selection method 300 begins in block 302 when the imageselection is initiated by the image server 116. The image server 116 canbe triggered automatically when a customer requests a desired item. Theimaging server 116 can be also triggered manually by the operator.

The image selection method 300 continues in block 305 when a request foran image set is received by the imaging server 116. That request canoriginate from the customer when the customer selects a desired item forpurchase. As well, that request can originate from the operator when theoperator triggers the imaging server 116 manually.

The method 300 continues in block 306 where the available image sets areretrieved. The image sets can be retrieved from a data store that isinternal to the system 100 (i.e., data store 124) or from an externaldata store. As an example of an external data store, individual sources(114(a) . . . 114(n)) can submit electronic catalogs of images. Thecatalog may contain information about both the quality and non-qualityaspects of images for the items available from that source, as well asany other information about the source. When the image set is retrievedfrom data store 124, it is performed by the image information server112.

Next, the image sets that have been retrieved are then filtered, asshown in block 310. In block 310, the filter(s) is selected and thenused to screen for the desired image, such as an optimal image (or imageset) that best depicts the item. The filter(s) used in block 310 can beanyone or combination of metrics or image selection criteria describedabove, including completeness, ranking, image type, etc.

In some instances, block 310 can be performed by parsing the metadataheaders. This parsing of the headers can be accomplished by steppingthrough the metadata, discarding the data not desired, and saving thedesired data. Alternatively, each source may present the metadata in aform that is immediately accessible and useable in this step. Undereither method, the result is a comparable data set that can directly berun against the filter(s).

In other instances, block 310 can be performed by applying the filter(s)using any form of automatic or manual comparison process. In theseinstances, the image data (whether metadata or subject matter data) iscompared to the filter on an image by image (or image set by image set)basis. This comparison can either be done manually using a person toperform the comparison, or automatically where the image server 116performs the comparison, e.g., using an algorithm. In light of theseoptions, block 310 may contain a control setting that allows theautomatic or manual method, or some hybrid of the two, to be selectedand performed.

As an example of the automatic comparison, the operator may want imagesof red flowers. Images of flower image data sets would then be retrievedfrom the data store 124 by the image information server 112 andpresented to image server 116. The image server 116 would then parsethrough the image set looking for images that are predominantly red. Theimage server 116 would then access any given image and analyze all thered pixels in the image, or portion of the picture, and store the pixelcount in a data set. If desired, a second (or third or fourth) criterioncould be used for further refinement by, for example, limiting the hueof red in each image or by requiring that over 50% percent of the pixelsin the image must be red. For the latter criteria, the image server 116could divide the red pixels by total pixels present in the images andthen list the ratio in the data set.

The manual comparison can be especially useful because some imagecharacteristics lend themselves to manual review because they are lessquantifiable, or are even subjective characteristics. Examples of thesecharacteristics include whether the image is in focus, whether the imagecontains the desired view(s), whether the image is accurate, and thelike. By manually choosing to compare the images, the control of aspectsthat are subjective (or less quantifiable) can be maintained. Indeed, itwould take considerable programming effort and potential use ofartificial intelligence (AI) to perform some tasks that are very simplefor a person to perform. The manual input needed for the manualselection can be performed by the operator of the system, a customer, oreven personnel external to the system (i.e., on a contractual basis).The manual input in the selection process can then be combined withother automatic input and used to perform the manual comparison in block310.

Once the image set is assembled and filtered, the method 300 may returnthe best image for display to a user (whether an operator or acustomer), as shown in block 315. That best image is then stored in thedata store 124 where it can be recalled at any time by the image server116 to be displayed.

The purpose of the image selection method 300 is to provide a best imageto display. The best image can then optionally be displayed in any typeof user interface (VI), including a UI presented to an operator, or to acustomer looking to purchase an item using the image. An example fordisplaying the best image in an operator UI is depicted in FIG. 2. TheVI for a user could also contain any other known components, such asallowing the operator to manually swap the displayed image for any otherimage and an option for the operator to change the metrics used toselect the desired image.

An example of a VI for a customer is depicted in FIG. 5. In FIG. 5, thecustomer UI 230 contains similar components as the operator VI depictedin FIG. 2. But the customer UI could also contain a price ($99.99) inthe text portion 134, as well as fields 161; 164, 162, and 166 for thecustomer. These fields may be in selectable thumbnail 161 that, whenselected, exchanges that image in the alternate viewing area with theimage in the primary viewing area 132. The customer VI can providefields for purchasing 162 an item for which a desired image isdisplayed, or could provide options for selecting a different item 164.Additionally, alternate or refining search criteria can be provided bysearch field 166. The VI for a customer may contain any other knowncomponents, such as an option for the customer to select preferreddisplay criteria.

The customer UI and/or the operator UI can contain options about theimage being displayed and what other processes can be performed on-orwith-the image. In some embodiments, the options can allow the image tobe manipulated, for example, to rotate views of the item provided by animage set. In other embodiments, however, the UI merely allows thedisplayed image to be viewed and no additional options can be displayed.As well, the number of images to be displayed in the UI can be changedor otherwise modified.

In some embodiments, the customer UI and/or the operator VI can containa number of different images that can be displayed in the UI, along withthe underlying criteria that lead to the selection of any given image ofthose displayed. If too many images are selected in these embodiments,an additional response query may be made for further criteria in orderto return a more manageable result of images. This step may be repeateduntil a desired image or image set is found.

Both the image scoring method 150 (illustrated in FIG. 3) and the imageselection method 300 (illustrated in FIG. 4) can contain an optionalfeedback loop(s). The feedback loop(s) allows the methods, including anyindividual part, to be improved on using any feedback. One example ofsuch feedback can be the manual feedback about the desired imageprovided by manual input. Another example of such feedback could be thefeedback provided by a customer through, for example, a comment aboutthe selected image or the image selection process. Another example ofthe feedback could include data about how often (or how little) aselected image for an item is viewed and/or used, for example, in apurchase by a customer. The feedback can be incorporated into the VI byinserting an appropriate field into the VI, such as field 168 that hasbeen added to the operator VI 130, as depicted in FIG. 6.

FIG. 7 illustrates an example of how the above systems and methods canbe used by an operator (or administrator) to select a specific image fora given item before that item is offered for sale to a customer. FIG. 7contains a flow chart depicting a method 400 for finding an image for ablack Polo brand T-shirt that will be displayed to a customer. Themethod 400 begins at block 402 when the image server 116 starts by beingtriggered manually by the operator.

The method 400 continues in block 403 when all colors of Polo brandT-shirts can be scored since the operator knows that the item ofinterest is a black Polo brand T-shirt. The method continues in block404 when the item of interest (a black Polo brand T-shirt) is selectedby the operator from among all of the colors of the Polo brand T-shirtsthat have been scored in block 403. Next, a data set of image sources(including sellers or suppliers) that have at least one image of a blackPolo brand T-shirt can be compiled in block 406. In this method 400,those image sources will most likely comprise any seller that isoffering a black Polo brand T-shirt for sale to a customer.

The method 400 continues when the operator enters the desired metrics orcriteria for the images of a black Polo brand T-shirt in block 408. Theoperator will, of course, seek an image that best appeals to customersand so will select those metrics or criteria that, when used, willselect the most appealing black Polo brand T-shirt. For example, theoperator may select one of the criteria to be that the image has a whitebackground since that will best show the black color of the Polo brandT-shirt.

A data set of all the images for black Polo brand T-shirts by all thesources is then collected in block 410. This data set can be collectedautomatically from any of the available image sources compiled in block406. The data set can then be organized in any manner known in the art,including organizing by the file size or resolution of the image files.

A best or optimal image (or set of images) for the black Polo T-shirt isthen selected for display in block 412. The optimal image can beselected by comparing the criteria from block 408 that have beencollected. An example of an optimal image (or image set) could includeonly an image set where all of the images have a white background (sincethat criteria was selected as an example for block 408). Another examplecould be a black Polo T-shirt that is shown as being worn on a model,and a complete set of images showing all views of that specific blackPolo T-shirt.

Optionally, a preference can be given to a given image that is providedfrom a specific source, as shown at block 414. For example, source Ccould be manually chosen over source A and B because of a contractualarrangement or because of the previous quality of images provided bysource C. As well, source C could be automatically given preferencebecause source C could have more images of black Polo T-shirts in thedata set(s) than sources A or B. Any other reason known in the art forpreferring one source over another could also be used.

In block 418, the best image set is displayed in a VI. The VI mayinclude an area for the selected image of the black Polo T-shirt andsecondary areas for related or alternative images, as described above.The operator's selection of different options in block 420 determineswhether the method 400 proceeds or stops. In one option, the operatorcan further refine the image process by adding more criteria,subtracting criteria, replacing criteria, or selecting differentcriteria. When this option is selected by the operator, the method 400is returned to block 408 to proceed forward based on the change incriteria.

The method 400 may be stopped in block 422 when the operator issatisfied that the image displayed is the best image for black PoloT-shirt. But the method 400 may be stopped during any of the stepslisted above and may be restarted at any point in the process dependingon the actions of the operator.

FIGS. 8 and 9 illustrate how an operator can use the VI to choose thebest image set from the various images that have been collected from thevarious sources. FIG. 8 shows an initial collection of images which canbe displayed to the operator in an operator UI. Using the systems andmethods described above, the operator can select a best image set whichis then displayed to a customer in the customer VI shown in FIG. 9. TheUIs in FIG. 8 and FIG. 9 can be displayed in any network resource of thesystem 100, such as a web page or as a standalone display.

Similar to the UIs described above, FIG. 8 depicts a VI containing aselected image (and/or image set), but displayed in the context of a webpage 800. The web page 800 displays the results of the collection of theimages from three different vendors. The vendors (sources 1, 2, and 3)are displayed in the sources section 806 of the web page 800. The webpage 800 also contains a primary image section 802 where the selectedimage can be displayed. Additionally, the web page 800 may contain atextual description area 804. If desired, the web page 800 could alsocontain any of the fields and components described above.

The primary image section 802 displays an image (or image set) selectedby the image' sever 116. If desired, the primary image section 802 mayinclude a hypertext link to further pages containing detailedinformation about that image that is currently shown. As well, theprimary image section 802 can contain information about the criteriathat have been used to select the primary image.

The web page 800 also contains an additional image section 816. Theadditional section 806 can show alternate images that can represent theselected image but which, for example, were not selected as the bestimage. In FIG. 8, the selected image displayed in the primary imagesection 802 might show a black boot. The additional image section 806may therefore depict alternative images of that black boot or may depictthe various secondary images comprising different views (front, back,side, etc. . . . ) of that same boot.

Another part of the web page 800 contains source section 806. The sourcesection 806 depicts the sources for the collected images. A singlesource may be displayed or, alternately, a plurality or sources may beshown and optionally associated with the image(s) they have provided.Where a single source has been selected as the preferred source, asdescribed above in FIG. 7, this preference can also be reflected insource section 806.

FIG. 8 illustrates the various images that may be returned from severaldifferent sources (1, 2, and 3). For example, an image containing ablack boot and several other colors of the same boot is shown at 810.Additionally, a boot with a higher heel than desired is shown at 814 andboots of varying color and of different colored backgrounds are shown at812. The items shown at 810, 812 and 814 each illustrate an image havingvarious features that prevent them from being selected as the bestimage, e.g., metric and/or coherence problems.

With the information presented in web page 800, the operator can accessand trigger the image server 116. The image server 116 then operates asdescribed to select the best image from among all of the imagesdisplayed on web page 800. The best image selected can then beoptionally approved by the operator using the VI in web page 800.

The best image can then be displayed to the customer by using the VIdisplayed as part of web page 900. Web page 900 contains the image inprimary image section 802, as well as image area 906 which illustratesthe best image set containing a complete set of alternate views of theimage in section 802. Images 810, 812 and 814 (with undesirablemetrics), as well as any duplicate images, have been removed, and are nolonger displayed to the customer in web page 900. A purchase price hasbeen added to the text portion 804 and a purchase field has been addedfor the convenience of the customer.

A limited number of sections are depicted in FIGS. 8 and 9 for purposesof clarity. But additional sections or components, including thosedescribed above) may be employed as needed for the convenience of theoperator or the customer. For example, additional sections could includethe metric ranking, a filter section for pre-screening the images, aswell as a verification field for the convenience of the operator. Aswell, depending on the size and format of the device used by thecustomer, the VI will take various forms and may have more or fewersections in order to fit the display of that customer device.

In addition to any previously indicated modification, numerous othervariations and alternative arrangements may be devised by those skilledin the art without departing from the spirit and scope of thisdescription, and appended claims are intended to cover suchmodifications and arrangements. Thus, while the information has beendescribed above with particularity and detail in connection with what ispresently deemed to be the most practical and preferred aspects, it willbe apparent to those of ordinary skill in the art that numerousmodifications, including, but not limited to, form, function, manner ofoperation and use may be made without departing from the principles andconcepts set forth herein. Also, as used herein, examples are meant tobe illustrative only and should not be construed to be limiting in anymanner.

What is claimed is:
 1. A computer-implemented method for selecting a setof images for display, the method comprising: receiving, by a computingdevice, a request to display a product page for a product; generating,by the computing device, a first image set by aggregating images of theproduct from a plurality of sellers of the product based on the imagerequest; scoring, by the computing device, individual images of thefirst image set based on determined scoring criteria, wherein thescoring criteria comprises at least one of pixel analysis criteria,image size criteria, image granularity criteria, or image colorcriteria; ranking, by the computing device, individual images of thefirst image set based on individual scores associated with the images;generating, by the computing device, a second image set from the firstimage set by selecting one or more images based at least in part on theranking associated with individual images; determining, by the computingdevice, whether the second image set is complete based, at least inpart, on whether each of a defined set of views of the product isrepresented by at least one image of the second image set, wherein thedefined set of views comprises two or more views representing differentviews of the product; based on a determination that each of the definedset of views of the product is represented by at least one image of thesecond image set, making, by the computing device, the images of thesecond image set that represent the defined set of views of the productavailable for display on the product page over a network.
 2. Thecomputer-implemented method of claim 1 further comprising automaticallydisplaying the second image set.
 3. The computer-implemented method ofclaim 1 further comprising: subsequent to generating the second imageset, receiving at least one selection criteria for filtering the secondimage set; creating, by the computing device, a filtered image set ofthe product by selecting images from the second image set based at leastin part on the at least one selection criteria.
 4. Thecomputer-implemented method of claim 1 further comprising filtering, bythe computing device, images of the first image set prior to scoring theindividual images of the first image set to form a filtered image set,wherein only images in the filtered image set are scored.
 5. Thecomputer-implemented method of claim 4, wherein creating the filteredimage set of the product by selecting images from the first imageincludes determining whether a background in two or more images depictsa substantially similar color.
 6. The computer-implemented method ofclaim 1 wherein scoring individual images of the first image set basedon determined scoring criteria includes identifying, by the computingdevice, images of the first second image set that portray the productbased on an analysis of individual images in the first image set,wherein the analysis is based on at least one attribute of the productincluded in images of the first image set that portray the product. 7.The computer-implemented method of claim 6, wherein the analysis of atleast one attribute of the product includes determining whether morethan a threshold number of pixels in one or more images depict asubstantially similar color.
 8. A computer-implemented system forselecting images for display, the system comprising: a data store forstoring a plurality of images from multiple sources; and a computerprocessor in communication with said data store that is configured to:receive a request to display a product page for a product; generate afirst image set by retrieving images of the product from multiplesources; score individual images of the first image set based ondetermined scoring criteria, wherein in the scoring criteria comprisesat least one of pixel analysis criteria, image size criteria, imagegranularity criteria, or image color criteria; generate a second imageset from the first image set by selecting one or more images based onthe scores associated with individual images; determine whether thesecond image set is complete based, at least in part, on whether each ofa defined set of views of the product is represented by at least oneimage of the second image set, wherein the defined set of viewscomprises two or more views that represent different views of theproduct; and based on a determination that each of the defined set ofviews of the product is represented by at least one image of the secondimage set, make the images of the second image set that represent thedefined set of views of the product available for display on the productover a network.
 9. The computer-implemented system of claim 8, whereinthe computer processor is further configured to automatically collectcriteria for scoring the first image set and rank the collected criteriabefore using the criteria to score the first image set.
 10. Thecomputer-implemented system of claim 8 further configured to rank imagesof the first image set based, at least in part, on the scores assignedto images of the first image set before generating the second image set.11. The computer-implemented system of claim 8 further configured todetermine whether images of the first second image set portray theproduct based on an the analysis of at least one attribute of theproduct, wherein the analysis includes determining whether more than athreshold number of pixels in one or more images depict a substantiallysimilar color.
 12. The computer-implemented system of claim 8, whereinthe second image set includes a primary image and a plurality ofsecondary images.
 13. A non-transitory computer-readable mediumcontaining computer executable code for selecting images to display,wherein the computer executable code when executed by a computingapparatus causes the computing apparatus to: receive a request todisplay a product page for a product; generate a first image set byaggregating images of the product from a plurality of sources of theproduct based on the image request; score individual images of the firstimage set based on determined scoring criteria; generate a second imageset from the first image set by selecting one or more images based onthe ranking associated with individual images; determine whether thesecond image set is complete based, at least in part, on whether each ofa defined set of views of the product is represented by at least oneimage of the second image set, wherein the defined set of viewscomprises two or more views that represent different views of theproduct; and based on a determination that each of the defined set ofviews of the product is represented by at least one image of the secondimage set, make the images of the second image set that represent thedefined set of views of the product available for display on the productpage over a network.
 14. The computer readable medium of claim 13,wherein the computer executable code further causes the computingapparatus to automatically display the second image set.
 15. Thecomputer readable medium of claim 13, wherein the computer executablecode further causes the computing apparatus to determine whether abackground in two or more images depict a substantially similar color.16. The computer readable medium of claim 13, wherein the determinedscoring criteria includes at least one of pixel analysis criteria, sizecriteria, granularity criteria, or color criteria.
 17. The computerreadable medium of claim 13, wherein the computer executable codefurther causes the computing apparatus to rank images of the first imageset based, at least in part, on the scores assigned to images of thefirst image set before generating the second image set.
 18. The computerreadable medium of claim 13, wherein the computer executable codefurther causes the computing apparatus to determine whether images ofthe second image set portray the product based on an the analysis of atleast one attribute of the product, wherein the analysis includesdetermining whether more than a threshold number of pixels in one ormore images depict a substantially similar color.
 19. The computerreadable medium of claim 13, wherein generate a second image set fromthe first image set includes determining a primary image and a pluralityof secondary images.
 20. The computer readable medium of claim 19,wherein the plurality of secondary images depict two or moreperspectives including at least one of a top view, a front view, or aside view of the product.